/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package at.dcmspl;

import java.util.List;
import javax.ejb.Remote;

/**
 * Is a Interface for the DcmQueueService on the Consumer Site
 * @author Hannes Stornig, Gosch Daniel
 */
@Remote
interface DcmQueueConsumerServiceRemote {
    public DcmQueue findDcmQueue(Object id);
    
    public DcmQueue findDcmQueueByName(String name);
    
    public void removeDcmQueue(DcmQueue entity);

    public void updateDcmQueue(DcmQueue entity);
    
    public DcmQueue removeDcmFile(DcmQueue dcmqueue, DcmFile dcmFile);
    
    public DcmFile poolDcmFile(DcmQueue dcmqueue);
    
    public DcmFile peekDcmFile(DcmQueue dcmqueue);
    
    public DcmFile remove(DcmQueue dcmqueue);
    
    public DcmFile elementAt(DcmQueue dcmqueue,int Index);
    
    public DcmFile movetoHead(DcmQueue dcmqueue, int index);
          
    public DcmFile findDcmFile(DcmFileCPK id);
    
    public long count();

    public DcmQueue getFirst();

    public List<DcmQueue> getAll();

    
}
